package com.shareach.service;

import java.util.List;

import org.springframework.data.domain.Page;
import org.springframework.data.mongodb.core.query.Criteria;

import com.shareach.common.BaseQueryOrder;
import com.shareach.domain.BaseBankDomain;

public interface BaseBankService {
	// add
	Long save(BaseBankDomain domain);

	// del
	void del(BaseBankDomain domain);

	// update
	void update(BaseBankDomain domain);

	// update by domain
	void update(BaseBankDomain domain, BaseBankDomain condition);

	// get by id
	BaseBankDomain getById(Long id);

	// get list
	List<BaseBankDomain> getList(BaseBankDomain domain);

	// get list by condition
	List<BaseBankDomain> getListbyCriteria(Criteria criteria);

	// get list by page
	Page<BaseBankDomain> getPageResult(BaseBankDomain domain, BaseQueryOrder order);

	List<BaseBankDomain> findAll();

	Long saveOrUpdate(BaseBankDomain bank);

	List<BaseBankDomain> getListByIds(List<Long> ids, BaseQueryOrder order);
}
